package com.yanqu.road.entity.activity.climbtower;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.player.UserBaseInfo;

import java.math.BigInteger;

@FieldTypeAnnotation(tableName = "t_c_climb_tower_top", autoSave = true)
public class ClimbTowerTopData extends DataObject {

    @FieldTypeAnnotation(select = true, update = true, desc = "活动ID")
    private int activityId;
    @FieldTypeAnnotation(select = true, update = true, desc = "层数")
    private int cellNum;
    @FieldTypeAnnotation(desc = "玩家ID")
    private long userId;
    @FieldTypeAnnotation(desc = "服务器ID")
    private long serverId;
    @FieldTypeAnnotation(desc = "形象")
    private int pic;
    @FieldTypeAnnotation(desc = "等级")
    private int lv;
    @FieldTypeAnnotation(desc = "能力值/实力")
    private BigInteger ability = BigInteger.ZERO;
    @FieldTypeAnnotation(desc = "基础信息")
    private UserBaseInfo userBaseInfo;

    public int getActivityId() {
        return activityId;
    }

    public void setActivityId(int activityId) {
        this.activityId = activityId;
    }

    public int getCellNum() {
        return cellNum;
    }

    public void setCellNum(int cellNum) {
        if (this.cellNum != cellNum) {
            this.cellNum = cellNum;
            setUpdateOption();
        }
    }

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        if (this.userId != userId) {
            this.userId = userId;
            setUpdateOption();
        }
    }

    public long getServerId() {
        return serverId;
    }

    public void setServerId(long serverId) {
        if (this.serverId != serverId) {
            this.serverId = serverId;
            setUpdateOption();
        }
    }

    public BigInteger getAbility() {
        return ability;
    }

    public void setAbility(BigInteger ability) {
        if (!this.ability.equals(ability)) {
            this.ability = ability;
            setUpdateOption();
        }
    }

    public int getPic() {
        return pic;
    }

    public void setPic(int pic) {
        if (this.pic != pic) {
            this.pic = pic;
            setUpdateOption();
        }
    }

    public int getLv() {
        return lv;
    }

    public void setLv(int lv) {
        if (this.lv != lv) {
            this.lv = lv;
            setUpdateOption();
        }
    }

    public UserBaseInfo getUserBaseInfo() {
        return userBaseInfo;
    }

    public void setUserBaseInfo(UserBaseInfo userBaseInfo) {
        this.userBaseInfo = userBaseInfo;
        setUpdateOption();
    }
}
